<?php

	class LoginController{
		
		public function DoControl($lw, $lh){
							
			//Kontrollerar först om användaren är inloggad och presenterar då en loggut-knapp.
			if ($lh -> IsLoggedIn() == true || $lh->DoLogin($lw->GetCookieUser(), $lw->GetCookiePw()) == true) {
				$body = $lw->DoMessageBox(LoginView::USER_IS_LOGGED_IN);
				$body .= $lw -> DoLogoutBox();
			}
			
			//Är användaren inte inloggad skrivs ett login-formulär ut.
			else {
				$body = $lw->DoMessageBox(LoginView::LOG_IN);
				$body .= $lw -> DoLoginBox();					
			}
			
			//Om Inloggningsförsök sker.
			if ($lw -> TriedToLogin()) {
			
				//Om rätt upgifter anges så sker inloggning.
				if ($lh -> DoLogin($lw -> GetUserName(), $lw -> GetPassword())) {
					
					//Om "kom ihåg mig"-boxen är icheckad så ska en cookie sparas för användarnamn och lösenord.		
					if($lw->TriedToRemember()){
						$lw->SetCookie();
					}
					
					//Sidan laddas om
					$lw->ReloadPage('index.php');
				}
				
				//Misslyckat inloggningsförsök meddelas. 
				else {
					
					if(isset($_SESSION[LoginHandler::$pw_check])){
						if ($_SESSION[LoginHandler::$pw_check] == 1){
							$body .= $lw->DoMessageBox(LoginView::LOGIN_FAILED_PW);
						}
						else{
							$body .= $lw->DoMessageBox(LoginView::LOGIN_FAILED);							
						}
					}
					else{					
						$body .= $lw->DoMessageBox(LoginView::LOGIN_FAILED);
					}
				}
			}
						
			//Om loggut-försök görs så loggas man ut, eventuella cookies raderas och sidan laddas om.
			if ($lw->TriedToLogout()) {
				$lh->DoLogout();
				$lw->UnsetCookie();
				$lw->ReloadPage('index.php');
			}

			return $body;
		}
	
}
